﻿using System.Collections.Generic;
using System.Linq;

namespace LogikBug
{
	public static class Linq
	{
		public static IQueryable<T> Queryable<T>()
		{
			return Enumerable.Empty<T>().AsQueryable();
		}

		public static IEnumerable<T> Empty<T>()
		{
			return Enumerable.Empty<T>();
		}

		public static ParallelQuery<T> Parallel<T>()
		{
			return Enumerable.Empty<T>().AsParallel();
		}

		public static IEnumerable<T> ToEnumerable<T>(T item)
		{
			return new[] { item };
		}

		public static IQueryable<T> ToQueryable<T>(T item)
		{
			return ToEnumerable(item).AsQueryable();
		}
	}
}
